home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3 / SCSL / dlaln2.z / dlaln2
Encoding:
Text File  |  2002-10-03  |  7.1 KB  |  199 lines

  1.  
  2.  
  3.  
  4. DDDDLLLLAAAALLLLNNNN2222((((3333SSSS))))                                                          DDDDLLLLAAAALLLLNNNN2222((((3333SSSS))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      DLALN2 - solve a system of the form (ca A - w D ) X = s B or (ca A' - w
  10.      D) X = s B with possible scaling ("s") and perturbation of A
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      SUBROUTINE DLALN2( LTRANS, NA, NW, SMIN, CA, A, LDA, D1, D2, B, LDB, WR,
  14.                         WI, X, LDX, SCALE, XNORM, INFO )
  15.  
  16.          LOGICAL        LTRANS
  17.  
  18.          INTEGER        INFO, LDA, LDB, LDX, NA, NW
  19.  
  20.          DOUBLE         PRECISION CA, D1, D2, SCALE, SMIN, WI, WR, XNORM
  21.  
  22.          DOUBLE         PRECISION A( LDA, * ), B( LDB, * ), X( LDX, * )
  23.  
  24. IIIIMMMMPPPPLLLLEEEEMMMMEEEENNNNTTTTAAAATTTTIIIIOOOONNNN
  25.      These routines are part of the SCSL Scientific Library and can be loaded
  26.      using either the -lscs or the -lscs_mp option.  The -lscs_mp option
  27.      directs the linker to use the multi-processor version of the library.
  28.  
  29.      When linking to SCSL with -lscs or -lscs_mp, the default integer size is
  30.      4 bytes (32 bits). Another version of SCSL is available in which integers
  31.      are 8 bytes (64 bits).  This version allows the user access to larger
  32.      memory sizes and helps when porting legacy Cray codes.  It can be loaded
  33.      by using the -lscs_i8 option or the -lscs_i8_mp option. A program may use
  34.      only one of the two versions; 4-byte integer and 8-byte integer library
  35.      calls cannot be mixed.
  36.  
  37. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  38.      DLALN2 solves a system of the form (ca A - w D ) X = s B or (ca A' - w D)
  39.      X = s B with possible scaling ("s") and perturbation of A. (A' means A-
  40.      transpose.) A is an NA x NA real matrix, ca is a real scalar, D is an NA
  41.      x NA real diagonal matrix, w is a real or complex value, and X and B are
  42.      NA x 1 matrices -- real if w is real, complex if w is complex.  NA may be
  43.      1 or 2.
  44.  
  45.      If w is complex, X and B are represented as NA x 2 matrices, the first
  46.      column of each being the real part and the second being the imaginary
  47.      part.
  48.  
  49.      "s" is a scaling factor (.LE. 1), computed by DLALN2, which is so chosen
  50.      that X can be computed without overflow.  X is further scaled if
  51.      necessary to assure that norm(ca A - w D)*norm(X) is less than overflow.
  52.  
  53.      If both singular values of (ca A - w D) are less than SMIN, SMIN*identity
  54.      will be used instead of (ca A - w D).  If only one singular value is less
  55.      than SMIN, one element of (ca A - w D) will be perturbed enough to make
  56.      the smallest singular value roughly SMIN.  If both singular values are at
  57.      least SMIN, (ca A - w D) will not be perturbed.  In any case, the
  58.      perturbation will be at most some small multiple of max( SMIN,
  59.      ulp*norm(ca A - w D) ).  The singular values are computed by infinity-
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. DDDDLLLLAAAALLLLNNNN2222((((3333SSSS))))                                                          DDDDLLLLAAAALLLLNNNN2222((((3333SSSS))))
  71.  
  72.  
  73.  
  74.      norm approximations, and thus will only be correct to a factor of 2 or
  75.      so.
  76.  
  77.      Note: all input quantities are assumed to be smaller than overflow by a
  78.      reasonable factor.  (See BIGNUM.)
  79.  
  80.  
  81. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  82.      LTRANS  (input) LOGICAL
  83.              =.TRUE.:  A-transpose will be used.
  84.              =.FALSE.: A will be used (not transposed.)
  85.  
  86.      NA      (input) INTEGER
  87.              The size of the matrix A.  It may (only) be 1 or 2.
  88.  
  89.      NW      (input) INTEGER
  90.              1 if "w" is real, 2 if "w" is complex.  It may only be 1 or 2.
  91.  
  92.      SMIN    (input) DOUBLE PRECISION
  93.              The desired lower bound on the singular values of A.  This should
  94.              be a safe distance away from underflow or overflow, say, between
  95.              (underflow/machine precision) and  (machine precision * overflow
  96.              ).  (See BIGNUM and ULP.)
  97.  
  98.      CA      (input) DOUBLE PRECISION
  99.              The coefficient c, which A is multiplied by.
  100.  
  101.      A       (input) DOUBLE PRECISION array, dimension (LDA,NA)
  102.              The NA x NA matrix A.
  103.  
  104.      LDA     (input) INTEGER
  105.              The leading dimension of A.  It must be at least NA.
  106.  
  107.      D1      (input) DOUBLE PRECISION
  108.              The 1,1 element in the diagonal matrix D.
  109.  
  110.      D2      (input) DOUBLE PRECISION
  111.              The 2,2 element in the diagonal matrix D.  Not used if NW=1.
  112.  
  113.      B       (input) DOUBLE PRECISION array, dimension (LDB,NW)
  114.              The NA x NW matrix B (right-hand side).  If NW=2 ("w" is
  115.              complex), column 1 contains the real part of B and column 2
  116.              contains the imaginary part.
  117.  
  118.      LDB     (input) INTEGER
  119.              The leading dimension of B.  It must be at least NA.
  120.  
  121.      WR      (input) DOUBLE PRECISION
  122.              The real part of the scalar "w".
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. DDDDLLLLAAAALLLLNNNN2222((((3333SSSS))))                                                          DDDDLLLLAAAALLLLNNNN2222((((3333SSSS))))
  137.  
  138.  
  139.  
  140.      WI      (input) DOUBLE PRECISION
  141.              The imaginary part of the scalar "w".  Not used if NW=1.
  142.  
  143.      X       (output) DOUBLE PRECISION array, dimension (LDX,NW)
  144.              The NA x NW matrix X (unknowns), as computed by DLALN2.  If NW=2
  145.              ("w" is complex), on exit, column 1 will contain the real part of
  146.              X and column 2 will contain the imaginary part.
  147.  
  148.      LDX     (input) INTEGER
  149.              The leading dimension of X.  It must be at least NA.
  150.  
  151.      SCALE   (output) DOUBLE PRECISION
  152.              The scale factor that B must be multiplied by to insure that
  153.              overflow does not occur when computing X.  Thus, (ca A - w D) X
  154.              will be SCALE*B, not B (ignoring perturbations of A.)  It will be
  155.              at most 1.
  156.  
  157.      XNORM   (output) DOUBLE PRECISION
  158.              The infinity-norm of X, when X is regarded as an NA x NW real
  159.              matrix.
  160.  
  161.      INFO    (output) INTEGER
  162.              An error flag.  It will be set to zero if no error occurs, a
  163.              negative number if an argument is in error, or a positive number
  164.              if  ca A - w D  had to be perturbed.  The possible values are:
  165.              = 0: No error occurred, and (ca A - w D) did not have to be
  166.              perturbed.  = 1: (ca A - w D) had to be perturbed to make its
  167.              smallest (or only) singular value greater than SMIN.  NOTE: In
  168.              the interests of speed, this routine does not check the inputs
  169.              for errors.
  170.  
  171. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  172.      INTRO_LAPACK(3S), INTRO_SCSL(3S)
  173.  
  174.      This man page is available only online.
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.